From 874b0daea2e97f685898d8624990034f6f59bbb0 Mon Sep 17 00:00:00 2001 From: Chun-wei Fan Date: Thu, 27 Oct 2016 14:13:42 +0800 Subject: [PATCH] MSVC builds: Make the GSK project functional Add the needed custom build steps to generate the GResource and enumeration sources that is needed for the build, and make sure that the build is able to find the Graphene headers and lib. Also add the necessary CFLAGS needed for building GSK. --- build/win32/vs12/gsk-4.vcxproj.filtersin | 16 ++------- build/win32/vs12/gsk-4.vcxprojin | 42 ++++++++++++++++------- build/win32/vs12/gtk4-build-defines.props | 7 ++-- build/win32/vs12/gtk4-gen-srcs.props | 18 ++++++++++ 4 files changed, 54 insertions(+), 29 deletions(-) diff --git a/build/win32/vs12/gsk-4.vcxproj.filtersin b/build/win32/vs12/gsk-4.vcxproj.filtersin index 7250315af8..6b1f1c3e0b 100755 --- a/build/win32/vs12/gsk-4.vcxproj.filtersin +++ b/build/win32/vs12/gsk-4.vcxproj.filtersin @@ -15,20 +15,10 @@ + Resource Files + Resource Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files - Source Files +#include "gsk-4.vs12.sourcefiles.filters" diff --git a/build/win32/vs12/gsk-4.vcxprojin b/build/win32/vs12/gsk-4.vcxprojin index 9d186643e0..a4bfca6d9c 100755 --- a/build/win32/vs12/gsk-4.vcxprojin +++ b/build/win32/vs12/gsk-4.vcxprojin @@ -163,21 +163,37 @@ + + Generating GSK enumeration sources... + $(GenGSKEnumSrcs) + ..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs) + Generating GSK enumeration sources... + $(GenGSKEnumSrcs) + ..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs) + Generating GSK enumeration sources... + $(GenGSKEnumSrcs) + ..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs) + Generating GSK enumeration sources... + $(GenGSKEnumSrcs) + ..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs) + + + Generating GSK resource sources... + $(GenGSKRsrcSrcs) + ..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs) + Generating GSK resource sources... + $(GenGSKRsrcSrcs) + ..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs) + Generating GSK resource sources... + $(GenGSKRsrcSrcs) + ..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs) + Generating GSK resource sources... + $(GenGSKRsrcSrcs) + ..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs) + - - - - - - - - - - - - - +#include "gsk-4.vs12.sourcefiles" diff --git a/build/win32/vs12/gtk4-build-defines.props b/build/win32/vs12/gtk4-build-defines.props index f618190fa4..4a11f4a042 100644 --- a/build/win32/vs12/gtk4-build-defines.props +++ b/build/win32/vs12/gtk4-build-defines.props @@ -7,7 +7,8 @@ 4.0.0 /dummy GTK_PREFIX=\"$(GtkDummyPrefix)\" - GDK_COMPILATION;G_LOG_DOMAIN="Gdk" + GDK_COMPILATION;G_LOG_USE_STRUCTURED=1;G_LOG_DOMAIN="Gdk" + GSK_COMPILATION;G_LOG_USE_STRUCTURED=1;G_LOG_DOMAIN="Gsk" INCLUDE_IM_am_et;INCLUDE_IM_cedilla;INCLUDE_IM_cyrillic_translit;INCLUDE_IM_ime;INCLUDE_IM_inuktitut;INCLUDE_IM_ipa;INCLUDE_IM_multipress;INCLUDE_IM_thai;INCLUDE_IM_ti_er;INCLUDE_IM_ti_et;INCLUDE_IM_viqr GTK_COMPILATION;G_LOG_DOMAIN="Gtk";GTK_HOST="i686-pc-vs$(VSVer)";GTK_PRINT_BACKENDS="file";GTK_PRINT_BACKEND_ENABLE_UNSUPPORTED;$(GtkIncludedImmodulesDefines);GTK_LIBDIR="$(GtkDummyPrefix)/lib";GTK_DATADIR="$(GtkDummyPrefix)/share";GTK_DATA_PREFIX="$(GtkDummyPrefix)";GTK_SYSCONFDIR="$(GtkDummyPrefix)/etc";MULTIPRESS_CONFDIR="$(GtkDummyPrefix)/etc/gtk-$(ApiVersion)";MULTIPRESS_LOCALEDIR="$(GtkDummyPrefix)/share/locale";GTK_VERSION="$(GtkVersion)/etc";GTK_BINARY_VERSION="$(GtkBinaryVersion)/etc";GDK_DISABLE_DEPRECATED;ISOLATION_AWARE_ENABLED imm32.lib @@ -22,14 +23,14 @@ - ..\..\..;$(GlibEtcInstallRoot)\include\gdk-pixbuf-2.0;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\gio-win32-2.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories) + ..\..\..;$(GlibEtcInstallRoot)\include\gdk-pixbuf-2.0;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\graphene-1.0;$(GlibEtcInstallRoot)\lib\graphene-1.0\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\gio-win32-2.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories) HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES;ATK_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;_USE_MATH_DEFINES;%(PreprocessorDefinitions) msvc_recommended_pragmas.h;%(ForcedIncludeFiles) true /d2Zi+ %(AdditionalOptions) - pangocairo-1.0.lib;cairo.lib;cairo-gobject.lib;pango-1.0.lib;gdk_pixbuf-2.0.lib;gio-2.0.lib;gmodule-2.0.lib;gobject-2.0.lib;glib-2.0.lib;intl.lib;epoxy.lib;%(AdditionalDependencies) + pangocairo-1.0.lib;cairo.lib;cairo-gobject.lib;pango-1.0.lib;gdk_pixbuf-2.0.lib;graphene-1.0.lib;gio-2.0.lib;gmodule-2.0.lib;gobject-2.0.lib;glib-2.0.lib;intl.lib;epoxy.lib;%(AdditionalDependencies) $(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories) diff --git a/build/win32/vs12/gtk4-gen-srcs.props b/build/win32/vs12/gtk4-gen-srcs.props index 587bc1ce2e..5aeaab1e02 100644 --- a/build/win32/vs12/gtk4-gen-srcs.props +++ b/build/win32/vs12/gtk4-gen-srcs.props @@ -44,6 +44,18 @@ echo $(Configuration) > ..\..\..\MSVC_$(Configuration)_Broadway copy ..\..\..\gtk\gtk-win32.rc.body ..\..\..\gtk\gtk-win32.rc $(PythonPath)\python ..\replace.py --action=replace-var --input=..\..\..\gtk\libgtk4.manifest.in --output=..\..\..\gtk\libgtk4.manifest --var=EXE_MANIFEST_ARCHITECTURE --outstring=* copy ..\..\..\demos\gtk-demo\demos.h.win32 ..\..\..\demos\gtk-demo\demos.h + (cd ..) & (call gen-enums.bat $(GlibEtcInstallRoot)) & (cd $(SolutionDir)) + +echo ^<?xml version='1.0' encoding='UTF-8'?^> > ..\..\..\gsk\gsk.gresource.xml +echo ^<gresources^> >> ..\..\..\gsk\gsk.gresource.xml +echo ^<gresource prefix='/org/gtk/libgsk'^> >> ..\..\..\gsk\gsk.gresource.xml +for /f %%f in ('dir /b ..\..\..\gsk\resources\glsl\*') do echo ^<file alias='glsl/%%f'^>resources/glsl/%%f^</file^> >> ..\..\..\gsk\gsk.gresource.xml +echo ^</gresource^> >> ..\..\..\gsk\gsk.gresource.xml +echo ^</gresources^> >> ..\..\..\gsk\gsk.gresource.xml + +$(GlibEtcInstallRoot)\bin\glib-compile-resources.exe --sourcedir=..\..\..\gsk --c-name _gsk --generate-header --manual-register --target=..\..\..\gsk\gskresources.h ..\..\..\gsk\gsk.gresource.xml +$(GlibEtcInstallRoot)\bin\glib-compile-resources.exe --sourcedir=..\..\..\gsk --c-name _gsk --generate-source --manual-register --target=..\..\..\gsk\gskresources.c ..\..\..\gsk\gsk.gresource.xml + <_PropertySheetDisplayName>gtk4gensrcsprops @@ -76,5 +88,11 @@ echo $(Configuration) > ..\..\..\MSVC_$(Configuration)_Broadway $(CopyDemosH) + + $(GenGSKEnumSrcs) + + + $(GenGSKRsrcSrcs) + -- 2.30.2